package xyz.xtt.user.api.dto;

import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * @author dale
 * @date 2025/2/27
 **/
@Data
public class TblUserFundRecordDto implements Serializable {
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 记录类型：0-支付交易记录、1-提现记录 */
    private Integer recordType;

    /** 支付订单id */
    private Long payOrderId;

    /** 用户类型 ： 0-买方 1-卖方 2-平台 */
    private Integer userType;

    /** 用户id */
    private Long userId;

    /** 资金变动类型：0-买方支付 1-卖方收入 2-平台收入 3-卖方提现 */
    private Integer changeType;

    /** 资金变动金额 */
    private BigDecimal amount;

    /**
     * 状态：
     * 0-已支付
     * 1-待结算
     * 2-已结算
     * 3-已退款
     * 4-提现中
     * 5-已提现
     */
    private Integer changeStatus;

    /** 预计结算时间，settle_status=2的数据将于此时间自动结算 */
    private LocalDateTime settlePlanTime;

    /** 完成结算时间 */
    private LocalDateTime settleCompleteTime;

    /** 提现完成时间 */
    private LocalDateTime withdrawCompleteTime;

    /** 创建时间 */
    private LocalDateTime createTime;

    /** 更新时间 */
    private LocalDateTime updateTime;

    /** 版本号（从0开始，每次更新加1） */
    private Long ver;

}
